En 2012, le Gartner avait prédit que « Nous serons tous des développeurs ». Quatre ans après, le mouvement est doucement en marche, mais également dans l’entreprise il favorise le shadow IT. En théorie, il vient également heurter le mouvement DevOps. Alors, les développeurs citoyens sont-ils les bienvenus dans le monde DevOps ?
Qu’est-ce qu’un développeur citoyen ? L’étude « The State of Citizen Development Report », publiée fin 2015, le définit ainsi : « Le pouvoir de résoudre des problèmes de différents secteurs d’activité qui ont le dynamisme et la détermination à s’engager dans le développement d’applications, même si elles ne disposent pas des compétences traditionnelles de codage ». L’idée est donc d’identifier comme développeurs citoyens les personnes qui produisent du code pour l’entreprise, parfois sans disposer des compétences, sans être dans les équipes de développement de l’entreprise.
Les développeurs citoyens
Ces personnes se révèlent très présentes dans l’entreprise. Et de l’avis même des développeurs, 68 % d’entre eux font appel à des personnes qui sont à l’extérieur des équipes de développement. Le phénomène est encore plus sensible lorsque les projets portent sur le cloud ou sur l’IoT (Internet des Objets) qui favorisent les développements et compétences spécifiques.
Cela est rendu possible par plusieurs dispositions qui poussent le développement hors des sentiers battus : la compétence des individus dans leur métier qui peur permet de construire des modèles en ayant une compréhension intime des problèmes, leur imagination, leur disponibilité, le besoin également de disposer de solutions adaptées à leurs attentes, et la présence de plateformes de développement qui offrent des outils ne nécessitant pas d’expérience du codage pour composer des applications efficaces sans écrire une seule ligne de code.
Ces plateformes offrent de nombreuses facilités qui favorisent le développement, d’ailleurs les développeurs de l’entreprise sont les premiers à les utiliser. Ils y trouvent surtout une efficience opérationnelle (76 %), mais également dans une moindre mesure de l’agilité (13 %) et de la productivité (9 %). Cerise sur le gâteau, une plateforme ‘low code’ pour développeur citoyen est équivalente en moyenne à 8 solutions de développement qu’il serait nécessaire d’utiliser pour les remplacer. Nous reviendrons prochainement sur le profil du développeur citoyen…
Les développeurs DevOps
DevOps, c’est l’agilité et le dynamisme, l’automatisation et la 'continuité en continu'. La culture et les outils qui composent DevOps misent tous sur la rapidité, la facilitation d’une meilleure collaboration et la rationalisation des processus pour accélérer le développement et le déploiement des applications. Ce rythme rapide repose en grande partie sur l’automatisation, et sur des règles et des procédures pour gérer la façon dont les choses sont développées, testées, intégrées et déployées.
La philosophie DevOps est différente de celle du développeur citoyen. Dans le premier cas, elle est collaborative, s’appuie sur l’automatisation qui facilite l’itération, la mise en boucle des process de développement, et accepte l’échec comme une étape vers le succès. Par opposition, les développeurs citoyens sont dans une tranchée, ils ont une compréhension intime des problèmes qu’ils essaient de résoudre, et donc ils sont théoriquement les mieux adaptés pour les résoudre. Mais ces derniers sont très éloignés des problématiques d’infrastructure, de gouvernance, de déploiement, et ils se préoccupent peu de la complexité croissante des systèmes d’information, des problématiques du cloud, de la sécurité, et paradoxalement de l’investissement dans l’innovation.
DevOps vs développeur citoyen vs shadow IT
Le shadow IT est généralement assimilé aux solutions déployées et aux applications utilisées hors de la sphère de la DSI. Mais il est également composé d’une multitude d’applications et de services qui sont réalisés dans le cadre professionnel par des individus qui sont alors assimilables à des développeurs citoyens. S’ils peuvent être vus comme des ‘voyous’ dangereux parce qu’ils manipulent des outils non autorisés, les métiers et eux-mêmes se considèrent comme des ‘franc tireurs’. Et il faut leur reconnaître la capacité de créer rapidement des outils qui rendent des services attendus dans des conditions où soit la DSI peine à remplir son rôle, soit le métier et les futurs utilisateurs sont trop impatients pour suivre les procédures !
Le défi pour les organisations et pour la DSI est de faire cohabiter ces deux philosophies, et de faire en sorte qu’elles se complètent. La première action est d’ordre culturelle, liée à la connaissance des métiers et des usages de chacun, des avantages du DevOps, la reconnaissance mutuelle des compétences. La seconde est d’uniformiser les plateformes de développement ‘low code’, qui de toutes les façons seront utilisées par les deux parties. L’usage des bons outils va permettre aux développeurs citoyens d’aider les développeurs DevOps à résoudre leurs problématiques plus rapidement et en étant en phase avec les attentes. Et aux DevOPs de prendre la main sur les projets plus complexes, sur les interactions avec les solutions IT existantes, et évidemment sur le déploiement.
Plus que possible, la coexistence pacifique est souhaitable, afin de rendre le développement d’applications plus collaboratif et créatif, répondant aux besoins de l’entreprise, libéré des contraintes types d’ingénierie, impliquant des technologues, des architectes, des designers, et le business dans un travail interfonctionnel pour produire des résultats agiles.
Image d’en-tête 62826074 @ iStock